Supplier allocation¶
Project done at Deloitte (Client: Rolls-Royce)
Technologies used: Python, ORTools, Linear (Integer) Optimisation Timeline : Feb 2021 - Jun 2021
Impact: Estimated savings of 12 Million Pounds
POC: Bid Allocation tool
Problem Statement
Optimize procurement strategy for a global manufacturing major to minimize costs with several business constraints while using a biding process as inputs from suppliers
Demand for various parts that are required in manufacturing plants for the next five years are calculated. Multiple bids are solicited for procurement of these parts. A network of manufacturing plants and suppliers are created to calculate the transportation costs and lead time.
Suppliers are scored based on historic lead time and fill rate. Supplier capacity, cost and other details are taken from the bid placed. Existing supplier aggrements are also taken into consideration.
A web based tool is built that allocates parts to various suppliers across the next five years. The tool uses OR Tools (Integer programming) to run a supplier allocation problem. Different business constraints were converted into integer-based constraints and added to the optimisation function. These business constraints can be modified, added, or removed using the web-based UI and the optimal solution for each scenario is computed.
Variables
Boolean variables indicating procurement of part from supplier Continuous variables indicating the quantity of procurement of part from supplier
Constraints
1. Maximum and minimum number of suppliers that can supply a part
2. Maximum proportion of a part that can be supplied by a single supplier
3. Supplier capacity to supply a part
4. Existing supplier aggrements
5. Minimum supplier score (based on historic lead time and fill rate)
Optimise
1. Cost of the parts
2. Transportation costs